package io;

import java.io.Serializable;
import java.util.List;

/**
 *
 * @author Mariano Zapata
 */
public class Cliente extends Identificable implements Serializable {
    
    private String apellido;
    private String nombres;
    private int dni;
    private String fechaNacimiento;
    private byte estadoCivil;
    private String telMovil;
    private String email;
    private String domicilioDireccion;
    private String domicilioCiudad;
    private String domicilioProvincia;
    private int domicilioCodigoPostal;
    private String domicilioTelFijo;
    private String trabajoNombre;
    private String trabajoPuesto;
    private String trabajoDireccion;
    private String trabajoCiudad;
    private String trabajoProvincia;
    private int trabajoCodigoPostal;
    private String trabajoTelFijo;
    private String trabajoTelFax;
    private String trabajoWeb;
    private String seguimiento;
    private int duenio;
    
    public Cliente(List<Long> ruta)
    {
        super(ruta);
        apellido= "";
        nombres= "";
        dni= -1;
        fechaNacimiento= "";
        estadoCivil= -1;
        telMovil= "";
        email= "";
        domicilioDireccion= "";
        domicilioCiudad= "";
        domicilioProvincia= "";
        domicilioCodigoPostal= -1;
        domicilioTelFijo= "";
        trabajoNombre= "";
        trabajoPuesto= "";
        trabajoDireccion= "";
        trabajoCiudad= "";
        trabajoProvincia= "";
        trabajoCodigoPostal= -1;
        trabajoTelFijo= "";
        trabajoTelFax= "";
        trabajoWeb= "";
        seguimiento= "";
        duenio= -1;
    }

    public String getApellido() {
        return apellido;
    }

    public void setApellido(String apellido) {
        this.apellido = apellido;
    }

    public int getDni() {
        return dni;
    }

    public void setDni(int dni) {
        this.dni = dni;
    }

    public String getDomicilioCiudad() {
        return domicilioCiudad;
    }

    public void setDomicilioCiudad(String domicilioCiudad) {
        this.domicilioCiudad = domicilioCiudad;
    }

    public int getDomicilioCodigoPostal() {
        return domicilioCodigoPostal;
    }

    public void setDomicilioCodigoPostal(int domicilioCodigoPostal) {
        this.domicilioCodigoPostal = domicilioCodigoPostal;
    }

    public String getDomicilioDireccion() {
        return domicilioDireccion;
    }

    public void setDomicilioDireccion(String domicilioDireccion) {
        this.domicilioDireccion = domicilioDireccion;
    }

    public String getDomicilioProvincia() {
        return domicilioProvincia;
    }

    public void setDomicilioProvincia(String domicilioProvincia) {
        this.domicilioProvincia = domicilioProvincia;
    }

    public String getDomicilioTelFijo() {
        return domicilioTelFijo;
    }

    public void setDomicilioTelFijo(String domicilioTelFijo) {
        this.domicilioTelFijo = domicilioTelFijo;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public byte getEstadoCivil() {
        return estadoCivil;
    }

    public void setEstadoCivil(byte estadoCivil) {
        this.estadoCivil = estadoCivil;
    }

    public String getFechaNacimiento() {
        return fechaNacimiento;
    }

    public void setFechaNacimiento(String fechaNacimiento) {
        this.fechaNacimiento = fechaNacimiento;
    }

    public String getNombres() {
        return nombres;
    }

    public void setNombres(String nombres) {
        this.nombres = nombres;
    }

    public String getSeguimiento() {
        return seguimiento;
    }

    public void setSeguimiento(String seguimiento) {
        this.seguimiento = seguimiento;
    }

    public String getTelMovil() {
        return telMovil;
    }

    public void setTelMovil(String telMovil) {
        this.telMovil = telMovil;
    }

    public String getTrabajoCiudad() {
        return trabajoCiudad;
    }

    public void setTrabajoCiudad(String trabajoCiudad) {
        this.trabajoCiudad = trabajoCiudad;
    }

    public int getTrabajoCodigoPostal() {
        return trabajoCodigoPostal;
    }

    public void setTrabajoCodigoPostal(int trabajoCodigoPostal) {
        this.trabajoCodigoPostal = trabajoCodigoPostal;
    }

    public String getTrabajoDireccion() {
        return trabajoDireccion;
    }

    public void setTrabajoDireccion(String trabajoDireccion) {
        this.trabajoDireccion = trabajoDireccion;
    }

    public String getTrabajoNombre() {
        return trabajoNombre;
    }

    public void setTrabajoNombre(String trabajoNombre) {
        this.trabajoNombre = trabajoNombre;
    }

    public String getTrabajoProvincia() {
        return trabajoProvincia;
    }

    public void setTrabajoProvincia(String trabajoProvincia) {
        this.trabajoProvincia = trabajoProvincia;
    }

    public String getTrabajoPuesto() {
        return trabajoPuesto;
    }

    public void setTrabajoPuesto(String trabajoPuesto) {
        this.trabajoPuesto = trabajoPuesto;
    }

    public String getTrabajoTelFax() {
        return trabajoTelFax;
    }

    public void setTrabajoTelFax(String trabajoTelFax) {
        this.trabajoTelFax = trabajoTelFax;
    }

    public String getTrabajoTelFijo() {
        return trabajoTelFijo;
    }

    public void setTrabajoTelFijo(String trabajoTelFijo) {
        this.trabajoTelFijo = trabajoTelFijo;
    }

    public String getTrabajoWeb() {
        return trabajoWeb;
    }

    public void setTrabajoWeb(String trabajoWeb) {
        this.trabajoWeb = trabajoWeb;
    }

    public int getDuenio() {
        return duenio;
    }

    public void setDuenio(int duenio) {
        this.duenio = duenio;
    }
    
    @Override
    public String toString() {
        return apellido + ", " + nombres;
    }

    @Override
    public boolean equals(Object obj) {
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        return super.equals(obj);
    }

    @Override
    public int hashCode() {return super.hashCode();}
}
